package main

import "fmt"

func main() {
	fmt.Println("Hello Golang")

	name, age := "Han", 18
	str := fmt.Sprintf("hello, I am %s, I am %d \n", name, age)

	println(str)
	u := &user{
		Name: "Han",
		Age: 18,
	}
	fmt.Printf("v  --> %v \n", u)  // v  --> &{Han 18}
	fmt.Printf("+v --> %+v \n", u) // +v --> &{Name:Han Age:18}
	fmt.Printf("#v --> %#v \n", u) // #v --> &main.user{Name:"Han", Age:18}
	fmt.Printf("T  --> %T \n", u)  // T  --> *main.user
}

type user struct {
	Name string
	Age int
}